﻿<html DIR="LTR" xmlns:tool="http://www.microsoft.com/tooltip" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ddue="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
  <head>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" />
    <META NAME="save" CONTENT="history" />
    <title>Conectando-se com criptografia SSL</title>
    
    <link rel="stylesheet" type="text/css" href="../local/Classic.css">
      
    </link>
    
    <script src="../local/script.js">
      
    </script><script src="../local/script_main.js">&amp;nbsp;</script>
  </head>
  <body>
    <!--Topic built:04/01/2010 05:03:30-->

    
    
    
    
    
    
    
    
    
    <div id="header">
      <table width="100%" id="topTable"><tr>
          <td align="left">
            <span id="headerBold">Conectando-se com criptografia SSL</span>
          </td>
          <td align="right">
            
          </td>
        </tr></table>
      
      
      
    </div>
    <div id="mainSection">
      
        
        
    <font color="DarkGray">
      
    </font>
    <p />
    
    <p />
  
        <div id="introductionSection" class="section">
    <p>Os exemplos neste tópico descrevem como usar propriedades de cadeia de conexão que permitem aos aplicativos usar criptografia de Protocolo SSL (Secure Sockets Layer) em um aplicativo Java. Para obter mais informações sobre essas novas propriedades da cadeia de conexão, como <b>encrypt</b>, <b>trustServerCertificate</b>, <b>trustStore</b>, <b>trustStorePassword</b> e <b>hostNameInCertificate</b>, consulte <a href="f1b62700-f046-488d-bd6b-a5cd8fc345b7.htm">Definindo as propriedades de conexão</a>.</p>
    <p>Quando a propriedade <b>encrypt</b> estiver definida como <b>true</b> e a propriedade <b>trustServerCertificate</b> estiver definida como <b>true</b>, o Microsoft SQL Server JDBC Driver não validará o certificado SSL do SQL Server SSL. Isso costuma ser obrigatório para permitir conexões em ambientes de teste, como naqueles em que a instância do SQL Server tem apenas um certificado autoassinado.</p>
    <p>O exemplo de código a seguir demonstra como definir a propriedade <b>trustServerCertificate</b> em uma cadeia de conexão:</p>
    <div class="sampleCode"><span codeLanguage="other"><pre>String connectionUrl = 
    "jdbc:sqlserver://localhost:1433;" +
     "databaseName=AdventureWorks;integratedSecurity=true;" +
     "encrypt=true;trustServerCertificate=true";</pre></span></div>
    <p>Quando a propriedade <b>encrypt</b> estiver definida como <b>true</b> e a propriedade <b>trustServerCertificate</b> estiver definida como <b>false</b>, o Microsoft SQL Server JDBC Driver validará o certificado SSL do SQL Server SSL. A validação do certificado do servidor é parte do handshake SSL e garante que o servidor é o servidor correto para a conexão. Para validar o certificado do servidor, o material confiável deve ser fornecido no momento da conexão usando-se as propriedades de conexão <b>trustStore</b> e <b>trustStorePassword</b> explicitamente ou o armazenamento de confiança padrão da JVM (Máquina Virtual Java) subjacente. </p>
    <p>A propriedade <b>trustStore</b> especifica o caminho (inclusive o nome de arquivo) para o arquivo trustStore do certificado, que contém a lista de certificados na qual o cliente confia. A propriedade <b>trustStorePassword</b> especifica a senha usada para verificar a integridade dos dados de trustStore. Para obter mais informações sobre como usar o trustStore padrão da JVM, consulte <a href="ae34cd1f-3569-4759-80c7-7c9b33b3e9eb.htm">Configurando o cliente para criptografia SSL</a>.</p>
    <p>O exemplo de código a seguir demonstra como definir as propriedades <b>trustStore</b> and <b>trustStorePassword</b> em uma cadeia de conexão: </p>
    <div class="sampleCode"><span codeLanguage="other"><pre>String connectionUrl = 
    "jdbc:sqlserver://localhost:1433;" +
     "databaseName=AdventureWorks;integratedSecurity=true;" +
     "encrypt=true; trustServerCertificate=false;" +
     "trustStore=storeName;trustStorePassword=storePassword";</pre></span></div>
    <p>O JDBC Driver fornece uma propriedade adicional, <b>hostNameInCertificate</b>, que especifica o nome de host do servidor. O valor dessa propriedade deve corresponder à propriedade subject do certificado. </p>
    <p>O exemplo de código a seguir demonstra como usar a propriedade <b>hostNameInCertificate</b> em uma cadeia de conexão:</p>
    <div class="sampleCode"><span codeLanguage="other"><pre>String connectionUrl = 
    "jdbc:sqlserver://localhost:1433;" +
     "databaseName=AdventureWorks;integratedSecurity=true;" +
     "encrypt=true; trustServerCertificate=false;" +
     "trustStore=storeName;trustStorePassword=storePassword" +
     "hostNameInCertificate=hostName";</pre></span></div>
    <div style="margin: .5em 1.5em .5em 1.5em"><b>Observação: </b>
      Também é possível definir o valor das propriedades da conexão usando os métodos <b>setter</b> apropriados fornecidos pela classe <a href="097434fd-2b74-411c-a5ed-eba04481dde5.htm">SQLServerDataSource</a>.<p />
    </div>
  </div><span id="seeAlsoSpan"><h1 class="heading">Consulte também</h1></span><div id="seeAlsoSection" class="section" name="collapseableSection"><a href="8e566243-2f93-4b21-8065-3c8336649309.htm">Usando criptografia SSL</a><br /><a href="90724ec6-a9cb-43ef-903e-793f89410bc0.htm">Protegendo aplicativos do JDBC Driver</a><br /><br /></div><!--[if gte IE 5]>
			<tool:tip element="seeAlsoToolTip" avoidmouse="false"/><tool:tip element="languageFilterToolTip" avoidmouse="false"/><tool:tip element="roleInfoSpan" avoidmouse="false"/>
		<![endif]-->
      <div id="footer" class="section">
        
		<hr />
		
		<span id="fb" class="feedbackcss">
			
			
		</span>
		
		<a href="9bad553b-9e70-4696-8499-2e35f772a1e0.htm">
			
			© 2010 Microsoft Corporation. Todos os direitos reservados.
		</a>
 	
	
      </div>
    </div>
  </body>
</html>